use serde::Deserialize;

#[derive(Deserialize, Debug)]
pub struct WeatherInfo {
    pub status: Option<String>,
    pub count: Option<String>,
    pub info: Option<String>,
    pub infocode: Option<String>,
    pub lives: Option<Vec<Live>>
}

#[derive(Deserialize, Clone, Debug)]
pub struct Live {
    pub province: Option<String>,
    pub city: Option<String>,
    pub adcode: Option<String>,
    pub weather: Option<String>,
    pub temperature: Option<String>,
    pub winddirection: Option<String>,
    pub windpower: Option<String>,
    pub humidity: Option<String>,
    pub reporttime: Option<String>,
    pub temperature_float: Option<String>,
    pub humidity_float: Option<String>,
}

#[derive(Deserialize)]
pub struct Geo {
    pub status: Option<String>,
    pub count: Option<String>,
    pub info: Option<String>,
    pub geocodes: Option<Vec<Geocode>>,
}

#[derive(Deserialize, Clone)]
pub struct Geocode {
    pub adcode: Option<String>
}